// I think that the main function should remain untouched
// until all the states are finished. It's okay to use it for testing
// but please remove it when you're done to avoid clutter and confusion
// If you feel something should be added to main, go ahead and add it and leave
// a comment as to why
// -Strog

///////////////////////////////////////////////
//const definition goes at the front - far left
//c -  = constant variable
//s -  = static varibale
//variable type goes directly to the left of variable name
//db - = double
//i  - = int
//f  - = float
//s  - = string
//p  - = Pointer
//array definition goes on the far right
//a - = array

//examples of variables
//cdbSizea = const double array called Size
//fTypea = float array
//ciTemp = const int

//good way of knowing the type of each variable
//if this comment is changed everyone should know so that
//it can be a consistant standard
//-Little B
/////////////////////////////////////////////////

#include <conio.h>
#include <windows.h>
#include <iostream>
#include "ConsoleUtilities.h"
#include "EntityNames.h"
using namespace std;
#include "Master.h"
#include "Apprentice.h"
#include "Locations.h"
// as an addendum to the comment above, feel free to include your header files



int main()
{

  Master* master = new Master(ent_Master);
  Apprentice* apprentice= new Apprentice(ent_Apprentice);

  for (int i=0; i<20; ++i)
  { 
	cout << "\nTurn: " << 1 + i;
	master->SetHuntedCounter(apprentice->HuntedCheck());

	master->InputApprenticeMessage(apprentice->OutPutMessage());
	apprentice->InputMasterMessage(master->OutPutMessage());

	master->Update();
	cout << endl << "--------------------------------------";
	apprentice->Update();
	cout << endl;

	master->InputApprenticeMessage(apprentice->OutPutMessage());
	apprentice->InputMasterMessage(master->OutPutMessage());

	//Sleep(800);
  }

	//small function to prevent debugger from automatically closing after completion
	cout << "\nPress any key to continue...";
	while(!_kbhit())
	{
		Sleep(2000);
	}

	return 0;
}

